/*
 * list.h
 *
 *  Created on: 25 Nov 2010
 *      Author: samuel
 */

#ifndef STACK_H
#define STACK_H

typedef int DataType;

struct Node;
typedef struct Node *PtrToNode;
typedef PtrToNode Stack;


#ifdef __cplusplus
extern "C"
{
#endif


Stack create_stack(int max);
void destory_stack(Stack s);

int stack_push(Stack s, DataType x);
int stack_pop(Stack s, DataType *data);


#ifdef __cplusplus
}
#endif


#endif /* STACK_H */

